package request

type OrderReq struct {
	Platform             string                 `json:"platform" form:"platform"`
	Terminal             string                 `json:"terminal" form:"terminal"`
	ShopId               string                 `json:"shopId" form:"shopId"`
	GoodsCarryNum        int                    `json:"goodsCarryNum"  form:"goodsCarryNum"`
	Urls                 string                 `json:"urls"   form:"urls"`
	GoodsData            GoodsData              `json:"goodsData" form:"goodsData"`
	Timing               Timing                 `json:"timing" form:"timing"`
	TaskNum              int                    `json:"taskNum" form:"taskNum"`
	OrderPlaceType       string                 `json:"orderPlaceType" form:"orderPlaceType"`
	OrderPlaceEntry      string                 `json:"orderPlaceEntry" form:"orderPlaceEntry"`
	OrderPlaceDelay      string                 `json:"orderPlaceDelay" form:"orderPlaceDelay"`
	ExpressService       ExpressService         `json:"expressService" form:"expressService"`
	TaskRequire          TaskRequire            `json:"taskRequire" form:"taskRequire"`
	EnterTheStoreWay     EnterTheStoreWay       `json:"enterTheStoreWay" form:"enterTheStoreWay"`
	PlaceOrderKeyWordWay []PlaceOrderkeyWordWay `json:"placeOrderkeyWordWay" form:"placeOrderkeyWordWay"`
	RefundMethod         string                 `json:"refundMethod" form:"refundMethod"`
	UseAccretionFeeList  []string               `json:"useAccretionFeeList" form:"useAccretionFeeList"`
	Body                 string                 `json:"body" form:"body"`
}

type MainImages struct {
	Name   string `json:"name"`
	Url    string `json:"url"`
	Uid    int    `json:"uid"`
	Status string `json:"status"`
}

type Discount struct {
	Method             string `json:"method"`
	Value              string `json:"value"`
	CouponUrl          string `json:"couponUrl"`
	CouponMoney        string `json:"couponMoney"`
	FullReductionMoney string `json:"fullReductionMoney"`
	ChangePrice        int    `json:"changePrice"`
	ChangePriceChat    string `json:"changePriceChat"`
}

type AffiliatedProduct struct {
	Prourl    string  `json:"prourl"`
	Img       string  `json:"img"`
	Price     float64 `json:"price"`
	Title     string  `json:"title"`
	Spec      string  `json:"spec"`
	Key       int     `json:"key"`
	ProductId string  `json:"productId"`
}

type GoodsData struct {
	ShopId            string              `json:"shopId"`
	ShopName          string              `json:"shopName"`
	GoodsId           string              `json:"goodsId"`
	MainUrl           string              `json:"mainUrl"`
	GoodsName         string              `json:"goodsName"`
	Specification     string              `json:"specification"`
	MainImages        []MainImages        `json:"mainImages"`
	CommentImages     []interface{}       `json:"commentImages"`
	UnitPrice         float64             `json:"unitPrice"`
	OrderNum          int                 `json:"orderNum"`
	Discount          Discount            `json:"discount"`
	AffiliatedProduct []AffiliatedProduct `json:"AffiliatedProduct"`
	MainPrice         float64             `json:"mainPrice"`
}

type Interval struct {
	Type  string `json:"type"`
	Value int    `json:"value"`
}

type Timing struct {
	Switch      string   `json:"switch"`
	Time        string   `json:"time"`
	DefaultTime string   `json:"defaultTime"`
	Interval    Interval `json:"interval"`
}

type ExpressService struct {
	Switch string `json:"switch"`
	Gift   string `json:"gift"`
}

type TaskRequire struct {
	CarryImgComment     string   `json:"carryImgComment"`
	PositiveVoteImg     []string `json:"positiveVoteImg"`
	CommentImages       []string `json:"commentImages"`
	PositiveVoteContent string   `json:"positiveVoteContent"`
	IsChecKeword        bool     `json:"isChecKeword"`
	ChecKeword          string   `json:"checKeword"`
	CheckewordAnswer    string   `json:"checkewordAnswer"`
	ChecKewordFull      string   `json:"checKewordFull"`
	CreditLimit         string   `json:"creditLimit"`
	ShopCollect         string   `json:"shopCollect"`
	FollowShopLimit     string   `json:"followShopLimit"`
	CollectGoodsLimit   string   `json:"collectGoodsLimit"`
	AddCartLimit        string   `json:"addCartLimit"`
	ChatLimit           string   `json:"chatLimit"`
	ChatType            string   `json:"chatType"`
	ChatContent1        string   `json:"chatContent1"`
	ChatContent2        string   `json:"chatContent2"`
	ChatContent3        string   `json:"chatContent3"`
	IsLimitTaoke        string   `json:"isLimitTaoke"`
	BrowseGoodsLimit    string   `json:"browseGoodsLimit"`
	BrowseGoodsContent  string   `json:"browseGoodsContent"`
	SexLimit            string   `json:"sexLimit"`
	TaoqiLimit          string   `json:"taoqiLimit"`
	IsScreenShot        string   `json:"isScreenShot"`
	AgeLimit            string   `json:"ageLimit"`
	JobLimit            string   `json:"jobLimit"`
	ConsumeLimit        string   `json:"consumeLimit"`
	RegionLimit         string   `json:"regionLimit"`
	RegionFormat        string   `json:"regionFormat"`
	CategoryLimit       string   `json:"categoryLimit"`
	AskQuestion         string   `json:"askQuestion"`
	AskQuestionContent  string   `json:"askQuestionContent"`
	IsOnlyGoodBuyer     string   `json:"isOnlyGoodBuyer"`
	ConfirmReceipt      string   `json:"confirmReceipt"`
	IsAffiliatedProduct string   `json:"isAffiliatedProduct"`
	IsMerchantCheck     string   `json:"isMerchantCheck"`
	Feedback            []string `json:"feedback"`
}

type EnterTheStoreWay struct {
	Method string        `json:"method"`
	Tkl    string        `json:"tkl"`
	Image  []interface{} `json:"image"`
}

type PlaceOrderkeyWordWay struct {
	KeyWord       string `json:"keyWord"`
	OrderQuantity int    `json:"orderQuantity"`
	Key           int    `json:"key"`
}

type LogReq struct {
	Source  int8   `json:"source"`
	Remark  string `json:"remark"`
	OrderSn string `json:"order_sn"`
}
